Owen W. Taylor [Mon, 30 Apr 2012 19:33:49 +0000 (15:33 -0400)]
GtkPlug: fix handling of key events for different layouts
GtkPlug directly handles X KeyPress/Release events, instead of using
translation in GDK (which expects XI2 events for XI2). When this
was done, the handling of the group was stubbed out and never replaced.
Export gdk_keymap_x11_group_for_state() and gdk_keymap_x11_is_modifier()
so we can fill out the fields correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=675167
Paolo Borelli [Mon, 30 Apr 2012 19:41:03 +0000 (21:41 +0200)]
Fix info-bar reftest
InfoBar must take into account the border and padding when requesting
its allocation, since it is then drawing them. Besides, the border and
background should always be drawn, even when the message type is OTHER.
Paolo Borelli [Fri, 24 Feb 2012 13:32:43 +0000 (14:32 +0100)]
Fix infobar reftest for label background changes
Fix the reftest after previous commit
https://bugzilla.gnome.org/show_bug.cgi?id=670743
Cosimo Cecchi [Mon, 30 Apr 2012 16:54:45 +0000 (12:54 -0400)]
reftests: fix background-size reftest
We have to be careful and not set the background on the labels
themselves.
https://bugzilla.gnome.org/show_bug.cgi?id=670743
Paolo Borelli [Fri, 24 Feb 2012 13:30:49 +0000 (14:30 +0100)]
Paint label background
Make GtkLabel respect background css properties.
https://bugzilla.gnome.org/show_bug.cgi?id=670743
Cosimo Cecchi [Mon, 30 Apr 2012 16:10:45 +0000 (12:10 -0400)]
themingbackground: fix copy/paste typo
We need to fetch the area value for the origin, not for the clip.
Matthias Clasen [Mon, 30 Apr 2012 11:32:33 +0000 (07:32 -0400)]
Disable configuration-dependent keymap tests for now
These need to be made independent of the xkb configuration somehow.
As things are now, they will either fail when run on a naked X
server in make check, or fail when run in my session.
Matthias Clasen [Mon, 30 Apr 2012 11:07:33 +0000 (07:07 -0400)]
Fix build with --enable-debug
Matthias Clasen [Mon, 30 Apr 2012 11:02:01 +0000 (07:02 -0400)]
Updates for 3.5.1
William Jon McCann [Sat, 28 Apr 2012 01:44:26 +0000 (21:44 -0400)]
Mention XDG Base Dir migration in README for 3.6
https://bugzilla.gnome.org/show_bug.cgi?id=646631
William Jon McCann [Fri, 27 Apr 2012 16:57:50 +0000 (12:57 -0400)]
Migrate to XDG config dir for bookmarks
Will read from old location if new location isn't found but will
write it out to the new location.
https://bugzilla.gnome.org/show_bug.cgi?id=646631
William Jon McCann [Fri, 27 Apr 2012 16:39:17 +0000 (12:39 -0400)]
Prefer xdg data directory to legacy .icons directory
https://bugzilla.gnome.org/show_bug.cgi?id=646631
William Jon McCann [Fri, 27 Apr 2012 16:32:18 +0000 (12:32 -0400)]
Try to load css themes from the XDG config directory first
Will fall back to previous locations.
https://bugzilla.gnome.org/show_bug.cgi?id=646631
William Jon McCann [Fri, 27 Apr 2012 16:23:38 +0000 (12:23 -0400)]
Migrate to XDG config dir for custom papers
Will read from old location if new location isn't found but will
only write to the new location.
https://bugzilla.gnome.org/show_bug.cgi?id=646631
William Jon McCann [Fri, 27 Apr 2012 14:52:13 +0000 (10:52 -0400)]
Don't load binary modules from the home directory by default
We should rely on the module path environment variables being
set correctly for the architecture rather than load from .gtk-3.0
https://bugzilla.gnome.org/show_bug.cgi?id=646631
Richard Hughes [Thu, 26 Apr 2012 16:13:49 +0000 (17:13 +0100)]
Fix the colord support in GtkPrinterCups when the PPD is loaded async
If the PPD is not available when the printer is loaded then the PPD options are
not available and we can't get the correct qualifier to use with colord.
When the PPD becomes available, refresh the profile title to reflect reality.
https://bugzilla.gnome.org/show_bug.cgi?id=674890
Matthias Clasen [Sat, 28 Apr 2012 06:19:45 +0000 (02:19 -0400)]
GtkGrid: Add a note about overlapping children
https://bugzilla.gnome.org/show_bug.cgi?id=669989
Matthias Clasen [Sat, 28 Apr 2012 06:06:37 +0000 (02:06 -0400)]
Revert "WIP: make GtkNotebook window-draggable"
This reverts commit
b3a66c59ade144c094d4dbc568e33a5ef85c1a7d.
Carlos Garnacho [Sun, 22 Apr 2012 20:32:46 +0000 (22:32 +0200)]
treemodelsort: fix iter_previous so it can go back to the first item
It was getting the previous element, then checking whether it was the
first one, that has to be inverted so it doesn't stop on the second
item.
https://bugzilla.gnome.org/show_bug.cgi?id=674587
Diego Escalante Urrelo [Wed, 28 Mar 2012 08:38:10 +0000 (03:38 -0500)]
WIP: make GtkNotebook window-draggable
https://bugzilla.gnome.org/show_bug.cgi?id=672427
https://bugzilla.gnome.org/show_bug.cgi?id=674587
Matthias Clasen [Thu, 26 Apr 2012 21:51:13 +0000 (17:51 -0400)]
Add a 'fine adjustment' mode to ranges
Shift-click in the slider now starts a drag in 'fine adjustment'
mode, where we move the slider 10-times slower than the mouse.
This can be very helpful when scrolling through a very long document
or webpage, and moving the scrollbar even a single pixel already
jumps too far in the content.
https://bugzilla.gnome.org/show_bug.cgi?id=563688
Matthias Clasen [Thu, 26 Apr 2012 20:32:14 +0000 (16:32 -0400)]
Change button bindings for range widgets around
It seems to be general consensus that button 1 should do the jumping,
so we now jump to the clicked position on primary button clicks and
page on secondary button clicks. Touch behaves like primary.
https://bugzilla.gnome.org/show_bug.cgi?id=563688
Debarshi Ray [Fri, 20 Apr 2012 13:35:44 +0000 (15:35 +0200)]
stylecontext: Add GTK_STYLE_CLASS_DIM_LABEL
Fixes: https://bugzilla.gnome.org/674468
Matthias Clasen [Fri, 27 Apr 2012 12:30:05 +0000 (08:30 -0400)]
gtk-demo: fix the tool palette demo
The palette was confined to its minimal size, when in horizontal mode.
Benjamin Otte [Fri, 27 Apr 2012 01:33:57 +0000 (03:33 +0200)]
toolpalette: Configure adjustment properly
https://bugzilla.gnome.org/show_bug.cgi?id=673650
Benjamin Otte [Fri, 27 Apr 2012 01:28:22 +0000 (03:28 +0200)]
toolpalette: Rename variable
The variable that holds the total size for all widget allocations
shouldn't be called page_start.
Cosimo Cecchi [Wed, 25 Apr 2012 01:47:33 +0000 (21:47 -0400)]
icontheme: search first in all themes if the requested icon is symbolic
Symbolic icons use a "-symbolic" suffix to distinguish themselves from
highcolor variants. Note that the dash character here has a different
meaning than the specificity level defined in the icon-naming-spec [1],
as it identifies a property of the icon itself.
Since they might be provided by a parent theme (e.g. the HighContrast theme
relies on the gnome icon theme for them), when we are looking up one we
should first escape the generic icon inheritance mechanism defined in the
icon-naming-spec [1], and privilege a symbolic icon, if it exists in a
parent theme, before applying the inheritance evaluation.
This fixes symbolic icons not working properly when used in the
HighContrast theme with the GTK_ICON_LOOKUP_GENERIC_FALLBACK flag set.
[1]
http://standards.freedesktop.org/icon-naming-spec/latest/ar01s03.html
https://bugzilla.gnome.org/show_bug.cgi?id=674806
Cosimo Cecchi [Wed, 25 Apr 2012 00:22:24 +0000 (20:22 -0400)]
themingengine: simplify render_extension() default implementation
Avoid doing useless translations/rotations, since themes will most
likely set different CSS gradients using left/right/top/bottom style
classes, or use a plain color.
https://bugzilla.gnome.org/show_bug.cgi?id=674809
Cosimo Cecchi [Wed, 25 Apr 2012 01:47:45 +0000 (21:47 -0400)]
themingengine: render a frame in gtk_render_handle()
We already render a background there after all.
https://bugzilla.gnome.org/show_bug.cgi?id=674808
Cosimo Cecchi [Wed, 25 Apr 2012 01:17:25 +0000 (21:17 -0400)]
spinbutton: port to GtkIconHelper
Instead of doing our own lookup for symbolic icons and rendering the
pixbuf, use GtkIconHelper as other widgets do, which saves a bunch of
code.
https://bugzilla.gnome.org/show_bug.cgi?id=674807
Mark Vender [Thu, 12 Apr 2012 11:35:20 +0000 (11:35 +0000)]
Regenerate the gdk/gdkkeysyms.h and gdk/gdkkeysyms-compat.h files
https://bugzilla.gnome.org/show_bug.cgi?id=673259
Mark Vender [Thu, 12 Apr 2012 11:33:26 +0000 (11:33 +0000)]
Fix the gdk/gdkkeysyms-update.pl to reflect new upstream location
https://bugzilla.gnome.org/show_bug.cgi?id=673259
Rob Bradford [Mon, 23 Apr 2012 16:26:49 +0000 (17:26 +0100)]
wayland: Calculate window position offset to give emulated root coordinates
This allows combo box popup windows to appear in the correct place. This is a
workaround emulating root coordinates by calculating the offset for a chain
of windows that that are relative to each other.
Rob Bradford [Fri, 20 Apr 2012 16:57:33 +0000 (17:57 +0100)]
wayland: Only update position if the with_move flag is set
This was causing the combobox popup to be moved to (0,0) when just the
size was asserted.
Rob Bradford [Fri, 20 Apr 2012 12:53:54 +0000 (13:53 +0100)]
wayland: Improve error message handling in cursor buffer code
Matthias Clasen [Wed, 25 Apr 2012 03:34:12 +0000 (23:34 -0400)]
Make page up/down work again in scrolled menus
This was broken since before GTK+ 3.0, when we replaced
a use of requisition by allocation. Fix this by using the
requisition height, that is already cached by the menu code.
The math is not quite right here; if you page all the way
down a long menu, you end up on the second-to-last menuitem.
But at least, page up/down let you move up and down the menu
again.
https://bugzilla.gnome.org/show_bug.cgi?id=668931
Sam Thursfield [Tue, 24 Apr 2012 11:49:51 +0000 (12:49 +0100)]
Fix build with XInput < 2.2
Fixes regression introduced in
fa8e6f7857e9b4afba227c3108111f359dc826d5
Cosimo Cecchi [Mon, 23 Apr 2012 21:41:54 +0000 (17:41 -0400)]
docs: add gtk_builder_add_from_resource() to gtk-doc
John Ralls [Mon, 23 Apr 2012 19:37:48 +0000 (12:37 -0700)]
Remove some more CUPS 1.2 ifdefs.
John Ralls [Sun, 19 Feb 2012 23:11:24 +0000 (15:11 -0800)]
Bug 670373: modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
Fix up accesses of ipp structures in gtkcupsutils.c
John Ralls [Sun, 19 Feb 2012 21:48:19 +0000 (13:48 -0800)]
Bug 670373: modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
Having refactored cups_request_printer_list_cb so that the cups
version-dependent block size is small enough to be handled in a single ifdef,
make the ifdef HAVE_CUPS_API_1_6 block.
John Ralls [Sun, 19 Feb 2012 21:45:17 +0000 (13:45 -0800)]
Move some variable declarations into the scopes in which they're used.
John Ralls [Sun, 19 Feb 2012 21:29:11 +0000 (13:29 -0800)]
Extract Function cups_create_printer
John Ralls [Sun, 19 Feb 2012 21:28:42 +0000 (13:28 -0800)]
Extract function cups_printer_handle_attribute
John Ralls [Sun, 19 Feb 2012 21:19:11 +0000 (13:19 -0800)]
Extract printer setup variables into a struct
So that it can be passed as a single parameter to functions as we extract-function to make cups_request_printer_list_cb more manageable.
Note that not all of the affected variables are changed in this changeset. Those are in extracted functions and will be addressed in the next two changes.
John Ralls [Sun, 19 Feb 2012 21:15:40 +0000 (13:15 -0800)]
Create enum PrinterStateLevel
Fixes "magic number" in printer_state_reason_level.
John Ralls [Sun, 19 Feb 2012 21:14:36 +0000 (13:14 -0800)]
Extract reasons and reasons_desc arrays to file level
So that they can be used from more than one function. Rename them to avoid naming conflicts.
John Ralls [Sat, 18 Feb 2012 22:16:27 +0000 (14:16 -0800)]
Bug 670373: modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
The first, simple changes. Turns off the deprecation warnings and substitutes macros and short ifdef blocks where feasible.
Giovanni Campagna [Sun, 22 Apr 2012 17:25:16 +0000 (19:25 +0200)]
StyleProviderPrivate: mark internal variable as static
Otherwise, it could conflict with other symbols with the same
name exported by a different shared library, with undefined
effects.
https://bugzilla.gnome.org/show_bug.cgi?id=674577
Yuri Kozlov [Mon, 23 Apr 2012 08:14:57 +0000 (12:14 +0400)]
Updated Russian translation
Cosimo Cecchi [Fri, 20 Apr 2012 21:34:08 +0000 (17:34 -0400)]
xi2: ignore extraneous events for smooth scroll
Since the event will be ignored anyway after it's translated (slave
devices are disabled), don't let it run in the smooth scroll code path,
as it will burn our caches for the actual event we're interested in.
https://bugzilla.gnome.org/show_bug.cgi?id=673644
Cosimo Cecchi [Fri, 20 Apr 2012 21:24:45 +0000 (17:24 -0400)]
xi2: fix thinko in variable type
https://bugzilla.gnome.org/show_bug.cgi?id=673644
Matthias Clasen [Sun, 22 Apr 2012 16:50:29 +0000 (12:50 -0400)]
XI2: More logging for smooth scrolling
In addition to the delta, log device information.
This was triggered by
https://bugzilla.gnome.org/show_bug.cgi?id=673644
Matthias Clasen [Sun, 22 Apr 2012 05:32:20 +0000 (01:32 -0400)]
Beginning of keyhash tests
Not very interesting yet
Kristian Rietveld [Sun, 22 Apr 2012 15:11:38 +0000 (17:11 +0200)]
quartz: fix coordinates for synthesized event
Of course, we must pass coordinates in the NSWindow coordinate system
when creating an NSEvent. This fixes drag icon positioning and makes
the icon slide back to the correct position when the drag is
canceled.
Yaron Shahrabani [Sun, 22 Apr 2012 08:43:37 +0000 (11:43 +0300)]
Updated Hebrew translation.
Alexander Shopov [Sun, 22 Apr 2012 06:13:05 +0000 (09:13 +0300)]
Updated Bulgarian translation
Мирослав Николић [Sat, 21 Apr 2012 07:30:37 +0000 (09:30 +0200)]
Updated Serbian translation
Ryan Lortie [Mon, 16 Apr 2012 13:34:30 +0000 (09:34 -0400)]
./configure: fix error output for no -libXext
Due to the way the tests are structured, a missing libXext will give a
warning about a missing libX11 (even if libX11 is installed). This is
confusing to people who are trying to build Gtk.
https://bugzilla.gnome.org/show_bug.cgi?id=674200
Marek Kasik [Fri, 20 Apr 2012 15:09:58 +0000 (17:09 +0200)]
printing: Localize loaded PPD files
Use ppdLocalize() to localize strings in loaded PPD file (#674326).
Marek Kasik [Tue, 17 Apr 2012 15:12:56 +0000 (17:12 +0200)]
printing: Get default number-up value from CUPS
Requests "number-up-default" attribute from CUPS and
uses its value for setting value of "gtk-n-up" option.
(#672993)
Alexander Larsson [Fri, 20 Apr 2012 14:00:48 +0000 (16:00 +0200)]
gtk-demo: Find gtk-demo-application.exe on win32
We need to append the ".exe" extension when looking for the
application file on windows.
Matthias Clasen [Fri, 20 Apr 2012 05:50:01 +0000 (01:50 -0400)]
Fix a cornercase of menu parsing
When a uimanager in a gtkbuilder file contains a menu,
the builder parser was getting confused.
https://bugzilla.gnome.org/show_bug.cgi?id=672789
Matthias Clasen [Fri, 20 Apr 2012 03:41:53 +0000 (23:41 -0400)]
Cosmetic
Cosimo Cecchi [Thu, 19 Apr 2012 19:01:04 +0000 (15:01 -0400)]
stylecontext: add a define for an OSD style class
Cosimo Cecchi [Thu, 19 Apr 2012 19:00:03 +0000 (15:00 -0400)]
stylecontext: reorder style classes defines
A couple of style classes defines ended up mixed with the region
defines.
Rob Bradford [Thu, 19 Apr 2012 16:25:56 +0000 (17:25 +0100)]
wayland: Improve the error reporting in the Cairo GL surface code path
Rob Bradford [Thu, 19 Apr 2012 16:18:46 +0000 (17:18 +0100)]
wayland: Improve error messages during SHM buffer creation
Use g_critical rather than fprintf and and also grab the error messages from
errno and from Cairo
Murray Cumming [Thu, 19 Apr 2012 07:25:40 +0000 (09:25 +0200)]
GtkAppplication docs: Fix small typo.
Marek Černocký [Wed, 18 Apr 2012 20:02:40 +0000 (22:02 +0200)]
Updated Czech translation
Cosimo Cecchi [Wed, 18 Apr 2012 18:40:33 +0000 (14:40 -0400)]
messagedialog: also set GtkMisc alignment to zero for dialog labels
Setting xalign to START is not enough to make them left-aligned in every
case. This fixes a regression introduced in commit
cc0be1f949020de1562534fbc31ddf0af4651fe2
https://bugzilla.gnome.org/show_bug.cgi?id=674286
Cosimo Cecchi [Wed, 18 Apr 2012 17:46:39 +0000 (13:46 -0400)]
messagedialog: don't use gtk_widget_override_font()
Instead of overriding the font theme settings, just set the Pango
attributes we want on the label. This fixes message dialogs growing on
style_update after recent GTK+ changes.
Cosimo Cecchi [Wed, 18 Apr 2012 17:23:29 +0000 (13:23 -0400)]
gdk: add missing GDK_VERSION_3_6 symbol
Cosimo Cecchi [Wed, 18 Apr 2012 16:12:32 +0000 (12:12 -0400)]
container: fix wrong branching logic
If the resize mode of the container was GTK_RESIZE_IMMEDIATE we would
also fall trough to the next case in the switch, and always throw an
assertion.
Matej Urbančič [Tue, 17 Apr 2012 19:44:37 +0000 (21:44 +0200)]
Updated Slovenian translation
Fran Diéguez [Tue, 17 Apr 2012 18:04:05 +0000 (20:04 +0200)]
Updated Galician translations
Signed-off-by: Fran Diéguez <fran.dieguez@mabishu.com>
Rob Bradford [Tue, 17 Apr 2012 17:28:55 +0000 (18:28 +0100)]
wayland: Expose GdkWaylandDisplayManager as a public GType
This permits a runtime test of whether we are running on the Wayland platform
or not.
Daniel Mustieles [Tue, 17 Apr 2012 16:03:01 +0000 (18:03 +0200)]
Updated Spanish translation
Piotr Drąg [Tue, 17 Apr 2012 15:17:21 +0000 (17:17 +0200)]
Updated POTFILES.in
Rob Bradford [Tue, 17 Apr 2012 13:06:18 +0000 (14:06 +0100)]
wayland: Rename GdkScreenWayland to GdkWaylandScreen
This makes it consistent with the functions in the vtable and also consistent
with other backends.
Rob Bradford [Mon, 16 Apr 2012 15:55:43 +0000 (16:55 +0100)]
wayland: Rename GdkDisplayWayland to GdkWaylandDisplay
This makes it consistent with the functions in the vtable and also consistent
with other backends.
Benjamin Otte [Tue, 17 Apr 2012 06:52:10 +0000 (08:52 +0200)]
tests: Add a parsing test for the transition property
Benjamin Otte [Fri, 13 Apr 2012 15:27:47 +0000 (17:27 +0200)]
container: Redo style validation handling
Instead of using 1 global queue for both resizes and style validation,
use 2 queues. This makes the code a lot simpler and fixes a bug where we
could accidentally stop restylying for very delayed restyles.
Benjamin Otte [Fri, 13 Apr 2012 14:51:19 +0000 (16:51 +0200)]
container: needs_resize is a container flag, not a widget flag
The widget flag is alloc_needed, needs_resize is used for "is queued
into the container resize queue".
Benjamin Otte [Wed, 11 Apr 2012 16:10:52 +0000 (18:10 +0200)]
cssvalue: Remove GObject macros
GtkCssValue is not a GObject
Benjamin Otte [Wed, 11 Apr 2012 14:36:48 +0000 (16:36 +0200)]
stylecontext: Avoid style_context_save() calls
Introduce style_data_lookup_for_state() that does this.
Benjamin Otte [Wed, 11 Apr 2012 14:27:38 +0000 (16:27 +0200)]
stylecontext: Pull all the animation code together
We now animate the core style information (see comment in
gtk_style_context_save()). A lot of widgets save + set custom style
classes/states during drawing and so can't be animated. It does work for
labels, menus and buttons though.
Benjamin Otte [Wed, 11 Apr 2012 14:15:45 +0000 (16:15 +0200)]
stylecontext: Add GtkCssAnimatedValues
This is a GtkCssComputedValues subclass. So it's essentially a store for
computed CSS values. But it can be animated by advancing it to a certain
timestamp.
Benjamin Otte [Wed, 11 Apr 2012 14:04:46 +0000 (16:04 +0200)]
animation: Add CSS transition object
This is an implementation of GtkStyleAnimation for CSS transitions.
Again, this doesn't do anything but store the data needed to do the
transition.
Benjamin Otte [Wed, 11 Apr 2012 14:00:57 +0000 (16:00 +0200)]
stylecontext: Add new class for animation handling
A StyleAnimation is an immutable object used to track the state of CSS
values. I'd have liked to make it fully immutable - ie not have the
timestamp in there - but couldn't find a place to sanely store the
timestamp.
This is an abstract base class. Implementations for this will be added
later (for both CSS3 transitions and animations, potentially for
animated images).
Actually aplying the information in this object will be done by a
different object commtted later.
Benjamin Otte [Wed, 11 Apr 2012 13:02:56 +0000 (15:02 +0200)]
button: Remove _gtk_button_paint()
All buttons use the same paint function these days. States are managed
correctly so this was just leftovers from GTK 1 or GTK 2.
Benjamin Otte [Wed, 11 Apr 2012 13:02:00 +0000 (15:02 +0200)]
menuitem: Don't set menubar style class randomly
a) We're not a menubar, you can match on the parent if you have to
b) It's not set while getting preferred sizes
Benjamin Otte [Wed, 11 Apr 2012 12:56:15 +0000 (14:56 +0200)]
widget: Set .default class when widget is default
Don't just conditionally set it on buttons.
Benjamin Otte [Wed, 11 Apr 2012 10:37:44 +0000 (12:37 +0200)]
stylecontext: Shuffle around code
This has two goals:
1) Move invalidation code out of a nested if branch. Invalidation is
actually the most important thing this function does.
2) Have the changes bitmask available. It will needed for invalidate
calls to children later.
Benjamin Otte [Wed, 11 Apr 2012 10:22:07 +0000 (12:22 +0200)]
stylecontext: Add style_info_set_data()
.. to take care of the refcounting properly.
Benjamin Otte [Wed, 11 Apr 2012 10:14:36 +0000 (12:14 +0200)]
stylecontext: Make StyleInfo keep the next pointer
Benjamin Otte [Tue, 10 Apr 2012 21:24:41 +0000 (23:24 +0200)]
stylecontext: Make StyleData refcounted
This is needed for animations where we want to keep a custom StyleData
for animations.
Benjamin Otte [Tue, 10 Apr 2012 13:50:00 +0000 (15:50 +0200)]
stylecontext: Add public API to stop animations
... and use it.
Of course, there still are no animations, so we don't turn anything off
yet.
Benjamin Otte [Tue, 10 Apr 2012 13:37:35 +0000 (15:37 +0200)]
stylecontext: Add an animating framework
The design principles were:
- synchronized
If multiple style contexts are animating, they should all do an
animation step at the same time.
- degrades well
Even when there's thousands of style contexts all animating at the same
time, the animation steps don't starve the CPU. This is achieved by
making sure the timeout is really fast. It just sets a bunch of flags.
- no hidden bottlenecks
Turning animatability on or off on a style context is O(1).
So far it is unused.
Benjamin Otte [Tue, 10 Apr 2012 11:25:56 +0000 (13:25 +0200)]
computedvalues: Split out a function